cd ~
function Yunzai()
{
    cat <<run
*******************************************************
                    Yunzai-Bot一键安装
项目地址：[gitee]https://gitee.com/Le-niao/Yunzai-Bot
         [github]https://github.com/Le-niao/Yunzai-Bot
*******************************************************    
              
        1.部署Yunzai-Bot并安装喵喵、图鉴、戏天插件

            2.启动机器人

            3.关闭机器人

            4.自选插件安装

            5.QQ版本过低问题解决

            6.重新配置机器人QQ号（可能需要重新验证）

            7.安装python3.8版本

            8.安装python3.10版本

            9.安装ffmpeg（还没做）

            10.更改主人QQ
            
            0.退出

*******************************************************
run
}
function num()
{
    read -p "请输入上述操作前对应的数字：" number
    case $number in
        1)
            Yunzai-miaomiao-xiaoyao
            ;;
        2)
            app
            ;;
        3)
            bot-stop
            ;;
        4)
            plugin-install
            ;;
        5)
            QQ-repair
            ;;
        6)
            reconfig
            ;;
        7)
            python-install-1
            ;;
        8)
            python-install-2
            ;;
        9)
            ffmpeg-install
            ;;
        0)
            exit 0
            ;;
        10)
            masterQQ
            ;;
        999)
            test
            ;;
    esac
}
function Yunzai-miaomiao-xiaoyao()
{	
	#安装nodejs
    npm -v
	if [ $? -ne 0 ];then
        echo '正在准备安装nodejs中……'
	    sleep 0.5s
	    echo '正在准备安装nodejs中……'
	    sleep 0.5s
	    echo '正在准备安装nodejs中……'
	    sleep 0.5s
	    #下载nodejs
        curl -sL https://deb.nodesource.com/setup_17.x | bash -
	    #apt安装nodejs
        apt-get install -y nodejs
	    npm -v
	    if [ $? -ne 0 ];then
	        echo 'nodejs安装失败，请重新运行脚本重试'
            exit
        else
		    echo 'nodejs安装成功'
		    sleep 3s
        fi
    else
        echo '已安装nodejs，不再重复安装'
	fi

    echo '正在准备安装git'
	sleep 0.5s
    echo '正在准备安装git'
	sleep 0.5s
    echo '正在准备安装git'
	sleep 0.5s
    apt update
    apt install git -y
    echo 'git安装完成'
    sleep 1s

    echo '正在准备安装并启动redis'
	sleep 0.5s
	echo '正在准备安装并启动redis'
	sleep 0.5s
	echo '正在准备安装并启动redis'
	sleep 0.5s
    apt-get install redis -y
    redis-server --daemonize yes --save 900 1 --save 300 10
    echo 'redis安装且启动成功'
	sleep 3s

    echo '正在准备安装chromuim及中文字体'
	sleep 0.5s
	echo '正在准备安装chromuim及中文字体'
	sleep 0.5
	echo '正在准备安装chromuim及中文字体'
	sleep 0.5
    apt install chromium-browser -y
    apt install -y --force-yes --no-install-recommends fonts-wqy-microhei
	echo '安装成功'
	sleep 3s

	#克隆云崽项目
    cd ~/
	if [ -e Yunzai-Bot ];then
		echo -e '已有机器人文件或同名文件\n请选择删除文件重新下载，或选择忽略'
		read -p '输入1删除并重新下载，输入0忽略（别忘记回车）：' number
		if [ $number == 1 ];then
			#删除文件夹
			echo '正在删除已有文件……'
			rm -rf Yunzai-Bot
			echo '删除完成'
			sleep 1s
			echo '正在准备重新部署机器人项目'
			sleep 1s
			git clone https://github.com/Hoshinonyaruko/Yunzai-Bot.git
			sleep 1s
			echo '机器人项目部署完成'
		elif [ $number == 0 ];then
			echo '已忽略，不再重新下载机器人项目文件'
		fi
	else
		echo '正在准备下载机器人项目文件……'
		sleep 1s
		git clone https://github.com/Hoshinonyaruko/Yunzai-Bot.git
		echo '机器人项目文件下载完成'
		sleep 3s
	fi		
	
	#安装云崽依赖
    cd ~/Yunzai-Bot
	echo '正在准备安装机器人依赖……'
	sleep 1s
    npm install pnpm -g
    npm install -g cnpm --registry=https://registry.npmmirror.com   
    pnpm install -P
    echo '机器人依赖部署完成'
	sleep 3s
	
	#部署逍遥图鉴插件
	echo '准备安装图鉴插件，支持查询游戏角色、武器、圣遗物、食物等图鉴信息'
	sleep 1s
	cd ~/Yunzai-Bot/plugins
	if [ -e xiaoyao-cvs-plugin ];then
		echo '已有图鉴插件，不再重新安装'
		sleep 1s
	else
		git clone https://gitee.com/Ctrlcvs/xiaoyao-cvs-plugin.git
		echo '图鉴插件安装完成'
		sleep 1s
	fi
	
	#部署喵喵插件
	cd ~/Yunzai-Bot/plugins
	echo '准备安装喵喵插件，支持查询游戏内角色面板、群面板排行等信息'
    sleep 1s
	if [ -e miao-plugin ];then
		echo '已有喵喵插件，不再重新安装'
		sleep 1s
	else
		git clone https://gitee.com/yoimiya-kokomi/miao-plugin.git
		echo '喵喵插件安装完成'
		sleep 1s
	fi
    cd ~/Yunzai-Bot && pnpm add image-size -w
	
	#部署戏天插件
	cd ~/Yunzai-Bot/plugins
	echo '准备安装戏天插件，支持进行js插件及plugin插件包管理'
    sleep 1s
	if [ -e xitian-plugin ];then
		echo '已有戏天插件，不再重新安装'
		sleep 1s
	else
		git clone https://gitee.com/XiTianGame/xitian-plugin.git
		echo '戏天插件安装完成'
		sleep 1s
	fi
	
	#写入启动代码 
    echo echo 正在启动机器人 > /usr/bin/yz
    sed -i -e '1a redis-server --daemonize yes --save 900 1 --save 300 10 && cd ~/Yunzai-Bot && node app' /usr/bin/yz
    chmod 777 /usr/bin/yz
    echo echo 正在后台启动机器人 > /usr/bin/yzstart
	sed -i -e '1a cd ~/Yunzai-Bot && pnpm start' /usr/bin/yzstart
	chmod 777 /usr/bin/yzstart
    echo echo 查看机器人日志 > /usr/bin/yzlog
    sed -i -e '1a cd ~/Yunzai-Bot && pnpm run log' /usr/bin/yzlog 
    chmod 777 /usr/bin/yzlog
    echo echo 正在停止机器人 > /usr/bin/yzstop
    sed -i -e '1a cd ~/Yunzai-Bot && pnpm stop' /usr/bin/yzstop
    chmod 777 /usr/bin/yzstop
    echo echo 正在启动长楠脚本 > /usr/bin/cn
    sed -i -e '1a bash <(curl -sL https://gitee.com/sanaefox/Yunzai/raw/master/Yunzai-Bot-Shell.sh)' /usr/bin/cn
    chmod 777 /usr/bin/cn
	
    echo -e '\033[32m执行完成\033[0m'
    echo -e "重新打开本脚本请输入：\033[47;32mcn\033[0m"
    echo -e "启动机器人请输入\033[47;32myz\033[0m"
    echo -e "机器人后台启动运行（即不显示代码启动）请输入：\033[47;32myzstart\033[0m"
    echo -e "显示机器人日志请输入：\033[47;32myzlog\033[0m"
    echo -e "停止机器人后台运行请输入：\033[47;32myzstop\033[0m"
	echo -e "已安装喵喵、图鉴、戏天插件，机器人正常运行后输入【\033[47;34m#喵喵帮助\033[0m】、【\033[47;34m#图鉴帮助\033[0m】、【\033[47;34m#插件帮助\033[0m】以分别查看帮助面板"
    echo -e '现在请输入\033[43;32mnode app\033[0m或\033[43;32myz\033[0m以启动机器人并进行配置'
    echo '结束，跑路'
    echo '赞美乐神'
    exit
}
function app()
{
	#启动机器人
	redis-server --daemonize yes --save 900 1 --save 300 10 && cd ~/Yunzai-Bot && node app
    exit
}
function bot-stop()
{
	#关闭机器人
	cd ~/Yunzai-Bot && pnpm stop
    exit
}
function plugin-install()
{
function pluginlist()
{
	cat <<paolu
******************************************************************
                目前推荐的插件
	本列表源自@渔火Arcadia插件索引项目
    https://gitee.com/yhArcadia/Yunzai-Bot-plugins-index
    更多插件请自行前往该项目下查看并获取
    删除插件请使用戏天插件
    QQ聊天中对机器人发送“#插件帮助”以了解详情     
		
0.退出							   
1.锅巴插件：后台可视化管理界面【#锅巴帮助】
2.抽卡插件：更优的模拟抽卡体验【抽卡帮助】
3.土块插件：点歌、ai绘图等娱乐功能【#土块帮助】
4.小飞插件：点歌、天气等娱乐功能【#小飞帮助】
5.椰奶插件：对Bot的一些便捷操作【#椰奶帮助】
6.小月插件：群聊发图、本地图库等娱乐功能【#小月帮助】
7.碎月插件；疯狂星期四等娱乐功能【暂无帮助指令，前往项目自行查看】 
8.图鉴（Altas）：另一个图鉴插件【暂无帮助指令，前往项目自行查看】
9.虚空插件：群内娱乐功能，群友战力决斗【虚空帮助】
******************************************************************
paolu
}
function num()
{
	read -p '请输入你想要下载插件前对应的数字：' number
	case $number in
		0)
			exit 0
			;;
		1)
			guoba
			;;
		2)
			gacha
			;;
		3)
			earthk
			;;
		4)
			xiaofei
			;;
		5)
			yenai
			;;
		6)
			xiaoyue
			;;
		7)
			suiyue
			;;
		8)
			altas
			;;
		9)
			xukong
			;;
	esac
}
function guoba()
{
	cd ~/Yunzai-Bot/plugins
	if [ -e Guoba-Plugin ];then
	read -p '已有锅巴插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载锅巴插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf Guoba-Plugin
			git clone --depth=1 https://gitee.com/guoba-yunzai/guoba-plugin.git ./Guoba-Plugin/
            cd ~/Yunzai-Bot
            pnpm install --filter=guoba-plugin
			echo '已删除原锅巴插件并重新下载'
			sleep 1s
		fi
	else
		git clone --depth=1 https://gitee.com/guoba-yunzai/guoba-plugin.git ./Guoba-Plugin/
        cd ~/Yunzai-Bot
        pnpm install --filter=guoba-plugin
		echo '锅巴插件安装成功'
		sleep 1s
	fi
}
function gacha()
{	
	cd ~/Yunzai-Bot/plugins
	if  [ -e flower-plugin ];then
	read -p '已有抽卡插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载抽卡插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf flower-plugin
			git clone --depth=1 https://gitee.com/Nwflower/flower-plugin.git ./flower-plugin/
			echo '已删除原抽卡插件并重新下载'
			sleep 1s
		fi
	else
		git clone --depth=1 https://gitee.com/Nwflower/flower-plugin.git ./flower-plugin/
		echo '抽卡插件安装完成'
		sleep 1s
	fi
}
function earthk()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e earth-k-plugin ];then
	read -p '已有土块插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载土块插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf earth-k-plugin
			git clone https://gitee.com/SmallK111407/earth-k-plugin.git ./earth-k-plugin/
			echo '已删除原土块插件并重新下载'
			sleep 1s
		fi
	else
		git clone https://gitee.com/SmallK111407/earth-k-plugin.git ./earth-k-plugin/
		echo '土块插件安装完成'
		sleep 1s
	fi
}
function xiaofei()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e xiaofei-plugin ];then
	read -p '已有小飞插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载小飞插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf xiaofei-plugin
			git clone https://gitee.com/xfdown/xiaofei-plugin.git ./xiaofei-plugin/
			echo '已删除原小飞插件并重新下载'
			sleep 1s
		fi
	else
		git clone https://gitee.com/xfdown/xiaofei-plugin.git ./xiaofei-plugin/
		echo '小飞插件安装完成'
		sleep 1s
	fi
}
function yenai()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e yenai-plugin ];then
	read -p '已有椰奶插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载椰奶插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf yenai-plugin
			git clone https://gitee.com/yeyang52/yenai-plugin.git ./yenai-plugin/
			echo '已删除原椰奶插件并重新下载'
			sleep 1s
		fi
	else
		git clone https://gitee.com/yeyang52/yenai-plugin.git ./yenai-plugin/
		echo '椰奶插件安装完成'
		sleep 1s
	fi

}
function xiaoyue()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e tangxi-plugin ];then
	read -p '已有小月插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载小月插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf tangxi-plugin
			git clone https://gitee.com/txlx/tangxi-plugin.git ./tangxi-plugin/
			echo '已删除原小月插件并重新下载'
			sleep 1s
		fi
	else
		git clone https://gitee.com/txlx/tangxi-plugin.git ./tangxi-plugin/
		echo '小月插件安装完成'
		sleep 1s
	fi
}
function suiyue()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e suiyue ];then
	read -p '已有碎月插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载碎月插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf suiyue
			git clone https://gitee.com/Acceleratorsky/suiyue.git ./suiyue/
			echo '已删除原碎月插件并重新下载'
			sleep 1s
		fi
	else
		git clone https://gitee.com/Acceleratorsky/suiyue.git ./suiyue/
		echo '碎月插件安装完成'
		sleep 1s
	fi
}
function altas()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e Altas ];then
	read -p '已有altas图鉴插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载altas图鉴插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf Altas
			git clone --depth=1 https://gitee.com/Nwflower/atlas ./Altas/
			echo '已删除原altas图鉴插件并重新下载'
			sleep 1s
		fi
	else
		git clone --depth=1 https://gitee.com/Nwflower/atlas ./Altas/
		echo 'altas图鉴插件安装完成'
		sleep 1s
	fi
}
function xukong()
{
	cd ~/Yunzai-Bot/plugins
	if  [ -e akasha-terminal-plugin ];then
	read -p '已有虚空插件，是否删除原有插件重新下载，输入1重新下载，输入0忽略：' num
		if [ $num == 0 ];then
			echo '已忽略，不再重新下载虚空插件'
			sleep 1s
		elif [ $num == 1 ];then
			rm -rf akasha-terminal-plugin
			git clone https://gitee.com/go-farther-and-farther/akasha-terminal-plugin.git ./akasha-terminal-plugin/
			echo '已删除原虚空插件并重新下载'
			sleep 1s
		fi
	else
		git clone https://gitee.com/go-farther-and-farther/akasha-terminal-plugin.git ./akasha-terminal-plugin/
		echo '虚空插件安装完成'
		sleep 1s
	fi
}
function main()
{
    while true
    do
        pluginlist
        num
    done
}
main
	echo '退出插件安装'
}
function QQ-repair()
{
	echo '如果该选项执行后仍然提示QQ版本过低，请重试此选项直至解决，或尝试手动更改文件'
	read -p '请输入你的机器人QQ号并回车：' QQnumber
    cd ~/Yunzai-Bot/data/$QQnumber
    curl -o device-$QQnumber.json https://gitee.com/sanaefox/Yunzai/raw/master/QQrepaire
	echo '已尝试进行修复'
	read -p '是否立刻启动机器人，输入1启动，输入0不启动：' num
	if [ $num == 1 ];then
		redis-server --daemonize yes --save 900 1 --save 300 10 && cd ~/Yunzai-Bot && node app
		exit
	else
		echo '不启动机器人，请后续自行启动查看是否修复完成'
		sleep 1s
	fi
}
function reconfig()
{
    redis-server --daemonize yes --save 900 1 --save 300 10
    cd ~/Yunzai-Bot && pnpm run login
}
function python-install-1()
{
	#安装python3.8相关
    echo '正在准备安装python3.8及pip'
    sleep 0.5s
    echo '正在准备安装python3.8及pip'
    sleep 0.5s
    echo '正在准备安装python3.8及pip'
    sleep 0.5s
	#安装python和pip
    apt install git python3.8 python3-pip -y
	#进行软链接
    ln -sf python3.8 /usr/bin/python
    ln -sf /usr/bin/pip3 /usr/bin/pip
	#更新pip
    python -m pip install --upgrade pip
    echo 'python3.8及pip安装成功'
    echo -e 你当前的默认python版本是$(python --version)
    sleep 3s
}
function python-install-2()
{
    echo -e '正在准备安装python3.10，该步骤\033[31m可能需要半个小时\033[0m甚至\033[31m更久\033[0m，请耐心等待'
    sleep 0.5s
    echo -e '正在准备安装python3.10，该步骤\033[31m可能需要半个小时\033[0m甚至\033[31m更久\033[0m，请耐心等待'
    sleep 0.5s
    echo -e '正在准备安装python3.10，该步骤\033[31m可能需要半个小时\033[0m甚至\033[31m更久\033[0m，请耐心等待'
    sleep 3s
    cd ~
    #安装依赖
    apt update
    apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget make libbz2-dev -y
    #从仓库克隆python3.10包
    git clone https://gitee.com/fw-cn/Yunzai-Bot-Python3.10.0
    cp /root/Yunzai-Bot-Python3.10.0/Python-3.10.0.tgz /home/
    rm -rf Yunzai-Bot-Python3.10.0
    cd /home/
    #解压
    tar -zxvf Python-3.10.0.tgz
    cd Python-3.10.0
    ./configure --enable-optimizations
    make
    make install
    #软链接
    ln -sf /usr/local/bin/python3 /usr/bin/python
    ln -sf /usr/local/bin/pip3 /usr/bin/pip
    echo 'python3.10安装完成'
    echo -e 你当前的默认python版本是$(python --version)
    sleep 3s
}
function ffmpeg-install()
{
	echo '都说了还没做啦！'
	echo '都说了还没做啦！'
	echo '都说了还没做啦！'
	echo '都说了还没做啦！'
	echo '都说了还没做啦！'
	sleep 5s
}
function masterQQ()
{
    cd ~/Yunzai-Bot/config/config
    read -p '请输入主人QQ：' yourmasterQQ
    sed -i '7d' other.yaml
    sed -i "/masterQQ:/ a\  - \\$input" other.yaml
    sleep 1s
    echo '已修改主人QQ'
    sleep 1s
}
function test()
{
    echo '测试'
    sleep 1s
}
function main()
{
    while true
    do
        Yunzai
        num
    done
}
main